// Copyright (c) 2022 Huawei Device Co., Ltd. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CEF_LIBCEF_BROWSER_NET_DATA_BASE_IMPL_H_
#define CEF_LIBCEF_BROWSER_NET_DATA_BASE_IMPL_H_

#include "libcef/browser/browser_context.h"
#include "include/cef_data_base.h"

class CefDataBaseImpl : public CefDataBase {
 public:
  CefDataBaseImpl() = default;

  bool ExistHttpAuthCredentials() override;

  void DeleteHttpAuthCredentials() override;

  void SaveHttpAuthCredentials(const CefString& host, const CefString& realm,
    const CefString& username, const char* password) override;

  void GetHttpAuthCredentials(const CefString& host, const CefString& realm,
    std::vector<CefString>& username_password) override;

 private:
  IMPLEMENT_REFCOUNTING(CefDataBaseImpl);

  DISALLOW_COPY_AND_ASSIGN(CefDataBaseImpl);
};
#endif  // CEF_LIBCEF_BROWSER_NET_DATA_BASE_IMPL_H_
